(i) Technical Field
The present invention relates to a print document processing system, a cache apparatus, a data processing apparatus, a non-transitory computer readable medium storing a program, and a print document processing method.
(ii) Related Art
In general, print document data sent from personal computers to printers are written in a page description language (PDL) such as PostScript (registered trademark) or Portable Data Format (PDF) (ISO 32000-1). In printers, print document data is converted into bitmap (also called raster) image data by data processors called raster image processors (RIPS), and the image data is printed using print engines. In addition to printers of the type in which PDL data is converted directly into raster images, printers of the two-stage conversion type in which PDL data is converted into intermediate language data having a lower granularity than PDL commands, such as a display list, and the intermediate language data which is stored in a buffer is converted into bitmap data are also available.
Systems are also available in which plural data processors execute the conversion from PDL data into bitmap or intermediate language image data in parallel by a predetermined unit such as page by page.
Generally, furthermore, when converting a PDL document element (object) in print document data into bitmap or intermediate language data, a certain data processor stores, or caches, the converted data in a cache memory in association with identification information regarding the document element so that the same or different data processor that needs to convert the same document element later may use the cached data, thereby omitting the conversion process.
When multiple data processors are executing the process of converting page description language data into bitmap or intermediate language data in parallel, while one of the data processors (referred to as a “first data processor”) is creating image data by processing page description language data of a certain document element in print document data, another data processor (referred to as a “second data processor”) may be to start creating the image data of the same document element located in a different place in the print document data. In this case, if the image data created by the first data processor has been cached in a cache memory, the second data processor may use the cached image data. In this situation, however, it is assumed that the first data processor is currently creating the image data and therefore the image data is not in the cache memory. In this situation, a cache manager that manages the cache memory generally returns a response (cache-miss) indicating that the desired image data has not been cached. This response is also returned if any of the data processors is creating the image data or if none of the data processors is creating the image data. Because of the difficulty in determining, based on the response from the cache manager, whether or not another data processor, i.e., the first data processor, is creating the image data of the document element, the second data processor may create the image data and cache the created image data in the cache memory.